5

Kodningsregelsæt

En af de mest vanskelige opgaver ved arbejdet med XML er at flytte indholdet fra dets originale format til XML-format. Et QuarkXPress Passport-dokument kan være organiseret med forme og andre konventioner, men hvordan oversætter du dette til XML?

Avenue.quark hjælper dig med at automatisere denne proces. Har du et QuarkXPress Passport-dokument og en DTD, kan du med avenue.quark oprette et "kodningsregelsæt", der automatisk kan binde kombinationer af QuarkXPress Passport-forme, farver og skriftsnit til elementtyper i en DTD.


Sådan fungerer regelbaseret kodning

Med et kodningsregelsæt kan du knytte QuarkXPress Passport-forme og tekstsnit til elementer i en DTD. Du kan anvende et kodningsregelsæt til at automatisere en del af arbejdet med at kode et QuarkXPress Passport-dokument.

Se kapitel 6 "Kodning af indhold" for oplysninger om anvendelse af kodningsregelsæt i regelbaseret kodning.



Hvad er et kodningsregelsæt?

Når du anvender regelbaseret kodning, kan du med et kodningsregelsæt angive, at indhold der opfylder en række kriterier skal kodes med et bestemt elementnavn. Du kan f.eks. oprette en kodningsregel der siger, at de afsnit hvori afsnitsformen "Overskrift" er anvendt, skal kodes som et <overskrift>-element.

Et kodningsregelsæt består af et navngivet sæt med kodningsregler, der alle er baseret på en enkelt DTD. Hver kodningsregel angiver hvilke forme, farver og tekstsnit, der skal bindes til dets tilhørende element. Kodningsreglen i figuren herunder indikerer f.eks., at tekst, der anvender formen "01 Titel", skal kodes med elementtypen <titel>:

Med kodningsregelsæt bestemmer du, hvordan regelbaseret kodning skal anvendes.

Du kan tilføje en anden regel for at angive, at kursiv tekst i afsnit der anvender formen "01 Titel" skal kodes med koden <udtryk>, som vist heunder:

Med kodningsregelsæt kan du indskyde elementer i andre elementer.

Med de to kodningsregler der er vist herover kan et afsnit med afsnitsformen "01 Titel" og som indeholder kursiv tekst, kodes således:

<titel>Hvad stuepigen <udtryk>egentlig </udtryk>så</titel>

For at den valgte elementtype anvendes skal samtlige kriterier i området Regelindstillinger opfyldes. Den følgende kodningsregel indikerer f.eks. at kun tekst med afsnitsformen "02 Forfatter" og som er rød og med fed skrift, skal kodes med elementtypen <forfatter>:

Alle kriterier i en kodningsregel skal opfyldes for at en kode anvendes.

Hvis du vil kæde flere typer formatering til en bestemt elementtype kan du blot oprette yderligere regler for den pågældende elementtype. Forestil dig f.eks. at du har to forskellige afsnitsforme til navne: En form til den første navn på en liste og en anden form til de øvrige navne på listen. (Dette anvendes ofte af pladshensyn). Du kan blot oprette to kodningsregler for elementtypen <navn>, én der binder formen "Første navn" til <navn>, og én der binder formen "Andre navne" til <navn>. Avenue.quark koder herefter de afsnit der opfylder den ene eller den anden regels kriterier som <navn>-elementer.

Hvem opretter kodningsregelsæt? I mange arbejdsforløb bør det udelukkende være administrativt personale der opretter kodningsregelsæt.



Hvordan fungerer regelbaseret kodning af tekst?

Når du anvender regelbaseret kodning til et felt der er fyldt med tekst, gennemgår avenue.quark teksten fra start til slut og forsøger at kode teksten, så den svarer til reglerne i DTD'en. I denne proces ser avenue.quark hele tiden fremad for at se, om der findes tekst der svarer til en regel der passer med DTD'en.

Tekst der ikke kan kodes i overensstemmelse med en kodningsregel ignoreres.



Kodningsregelkonflikter

Forestil dig, at du har oprettet et kodningsregelsæt som indeholder to regler. Den første regel bestemmer, at tekst der anvender formatet "Brødtekst" skal kodes som et <brød>-element. Den anden regel siger, at tekst,der anvender formatet "Brødtekst" skal kodes som et <afsnit>-element. Hvad sker der, hvis du anvender dette kodningsregelsæt på et felt der indeholder et tekstafsnit med formen "Brødtekst"?

Svaret er, at avenue.quark viser en dialog, hvori du bliver spurgt om hvilken elementtype, du vil bruge. Dialogen Vælg regel/placering vises altid når to eller flere regler kan anvendes på den samme tekst.

Hvad nu hvis avenue.quark skal kode den samme tekst to gange, og anbringe kopier af teksten i såvel et <brød>-element og i et <afsnit>-element? Du kan så oprette to kodningsregelsæt ­ ét der siger, at "Brødtekst" skal kodes som et <brød>-element, og ét der siger, at "Brødtekst" skal kodes som et <afsnit>-element ­ og herefter udføre regelbaseret kodning på den samme tekst to gange, én gang med hvert kodningsregelsæt.


Dialogen Vælg regal/placering


Arbejde med kodningsregelsæt

Med et kodningsregelsæt kan du knytte QuarkXPress Passport-forme, farver og tekstsnit til elementer i en DTD. Du kan anvende et kodningsregelsæt til automatisering af en del af arbejdet med at kode et QuarkXPress Passport-dokument.

Se kapitel 6 "Kodning af indhold" for oplysninger om at anvende kodningsregelsæt i regelbaseret kodning.



Oprettelse af et kodningsregelsæt

Med et kodningsregelsæt kan du angive hvordan tekst skal kodes, når du bruger regelbaseret kodning. Sådan opretter du et kodningsregelsæt:

1. Opret eller åbn det XML-dokument du vil oprette et kodningsregelsæt til.


2. Opret eller åbn et QuarkXPress Passport-dokument der indeholder alle de forme og farver, du vil bruge i kodningsregelsættet


3. Vælg Redigér > Kodningsregler. Dialogen Kodningsregler vises.


Opret et nyt kodningsregelsæt med dialogen Kodningsregler.

4. Klik på knappen Nyt sæt for at oprette et nyt kodningsregelsæt. Dialogen Redigér kodningsregler vises, og DOCTYPE'ns rodelement og filnavn vises i titellinien.


Med paletten Redigér kodningsregler kan du oprette og redigere et kodningsregelsæt.

5. Giv kodningsregelsættet et navn i feltet Navn.


6. Vælg en elementtype med fed skrift på listen til venstre. (Er en elementtypes navn ikke tilgængeligt betyder det, at DTD'en ikke tillader at der knyttes regler til den). Hvis du vil udvide et container-element og vise alle de elementer, det indeholder, skal du klikke på -symbolet (Mac OS) eller -symbolet (Windows) ud for det pågældende element. Rul listen for at se mere af DTD'en.


7. Hvis du vil starte med at føje en ny regel til kodningsregelsættet, skal du klikke på Tilføj regel. En tom regel føjes til listen Regler.


8. Hvis du vil konfigurere kodningsreglen så den automatisk koder tekst med en bestemt form, skal du klikke på Form og herefter vælge et formnavn i lokalmenuen Form. Hvis du ønsker, at et sammenhængende antal afsnit med den indikerede afsnitsform skal indsættes som separate elementer, skal du afkrydse Ny kode for hvert afsnit. Ønsker du at et sammenhængende antal afsnit med den indikerede form skal indsættes som et enkelt element, skal du ikke afkrydse dette felt. Forme, der vises med kursiv skrift, findes ikke i det aktive QuarkXPress Passport-dokument


For at muligheden Ny kode for hvert afsnit skal fungere, skal DTD'en understøtte flere forekomster i træk af det valgte element.


9. Hvis du vil konfigurere kodningsreglen, så den automatisk koder tekst med en bestemt farve, skal du klikke på Farve og herefter vælge et farvenavn i lokalmenuen Farve. Farvenavne der vises med kursiv skrift findes ikke i det aktive QuarkXPress Passport-dokument.


Kodningsregelsæt indeholder kun navnene på forme og farver. Hvis du ændrer navnet på en form eller en farve i dokumentet, skal du også opdatere kodningsregelsættet.


10. Hvis du vil konfigurere kodningsreglen, så den automatisk koder tekst med en bestemt kombination af skriftsnit, skal du klikke på Skriftsnit og herefter klikke på symbolerne, for at angive hvilke skriftsnit der skal kodes. Et skriftsnitsymbol med en sort baggrund indikerer, at teksten skal anvende dette skriftsnit for at blive kodet. Et skriftsnitsymbol med en hvid baggrund indikerer, at tekst med dette skriftsnit ikke kodes, og et skriftsnitsymbol med en grå baggrund indikerer, at dette skriftsnit ikke anvendes ved regelbaseret kodning.


Husk, at teksten ikke er kodet før du har udført regelbaseret kodning på den. Se kapitel 6 "Kodning af Indhold" for yderligere oplysninger om regelbaseret kodning.


11. Hvis du vil føje en ny regel til den valgte elementtype skal du klikke på Tilføj regel og herefter gentage trinene 8, 9 og 10. Hvis du vil basere en ny regel på en eksisterende regel, skal du vælge den eksisterende regel på listen Regler, klikke på Dublér for at oprette en kopi af reglen og herefter omkonfigurere den dublerede regel.


12. Hvis du vil slette en regel for den valgte elementtype, skal du vælge reglen på listen Regler og herefter klikke på Slet.


Elementtyper, for hvilke der er oprettet regler, vises med kursiv skrift i DTD-listen.


13. Du kan gemme ændringerne i kodningsregelsættet ved at klikke på OK.


14. Luk dialogen Kodningsregler ved at klikke Arkivér (Mac OS) eller Gem (Windows).


Hvis en elementtype optræder flere gange i DTD-træet og du opretter en regel for en forekomst, vil reglen gælde for alle forekomster.


Men hvad nu hvis du vil oprette et kodningsregelsæt som indeholder regler for forme fra flere forskellige dokumenter? Du kan så blot oprette et nyt dokument, overføre alle formene fra de forskellige dokumenter (Arkiv (Mac OS) eller Fil (Windows) > Rediger > fanen Forme), og derefter oprette dine egne kodningsregler.



Redigere, dublere og slette kodningsregelsæt

I dialogen Kodningsregler (menuen Redigér) kan du redigere, dublere og slette kodningsregelsæt. Du skal blot vælge et kodningsregelsæt på listen og klikke på en af disse knapper: